Conversation
…ct.toml so that mkdocs-jupyter is not required anymore This commit refactors the `pyproject.toml` file to separate documentation-related dependencies into an optional group. The previous direct dependencies for documentation tools have been moved under `[project.optional-dependencies]` to enhance clarity and organization. Additionally, the version constraints for `mkdocs` and related plugins have been updated to ensure compatibility and improve the documentation build process.
pyproject.toml file to separate documentation-related dependencies into an optional group. The previous direct dependencies for documentation tools have been moved under [project.optional-dependencies] to enhance clarity and organization. Additionally, the version constraints for mkdocs and related plugins have been updated to ensure compatibility and improve the documentation build process.|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (1)
WalkthroughAdds a 0.9.0 release entry to the changelog, bumps project version to 0.9.0, moves docs-related dependencies out of main dependencies into a new optional Changes
Sequence Diagram(s)sequenceDiagram
participant CI as CI job
participant UV as uv (dependency manager)
participant Runner as Runner environment
rect rgb(240,248,255)
note left of CI: Previous flow
CI->>UV: uv sync --dev
UV->>Runner: install dev dependencies
end
rect rgb(245,255,240)
note left of CI: New flow (changed)
CI->>UV: uv sync --group docs --dev
UV->>Runner: install dev + docs optional group
end
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20–30 minutes
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
pyproject.toml (1)
51-74: Minor: Inconsistent package ordering between[project.optional-dependencies]and[dependency-groups]docs groups.The two docs dependency groups define the same 20 packages with identical version constraints, but in different orders (e.g.,
mikeappears at line 71 inproject.optional-dependenciesbut at line 124 independency-groups). While this doesn't break functionality, consistent ordering reduces cognitive load and potential merge conflicts.Align the package ordering between both groups. Here's the recommended order (sorted alphabetically within groups):
# Apply to [dependency-groups] docs section (lines 110-131) -docs = [ - "mkdocs>=1.6.1", - "mkdocs-git-revision-date-localized-plugin>=1.2.0", - "mkdocs-minify-plugin>=0.7.1", - "mkdocs-redirects>=1.2.1", - "mkdocs-awesome-pages-plugin>=2.9.2", - "mkdocs-git-authors-plugin>=0.7.2", - "mkdocstrings>=0.30.1", - "mkdocstrings[python]>=0.24.0", - "mkdocs-bibtex>=2.11.0", - "mkdocs-macros-plugin>=1.0.4", - "mkdocs-jupyter>=0.25.1", - "mkdocs-callouts>=1.9.1", - "mkdocs-glightbox>=0.3.4", - "mike>=2.0.0", - "mkdocs-exclude>=1.0.2", - "mkdocs-simple-hooks>=0.1.5", - "pymdown-extensions>=10.7", - "mkdocs-static-i18n>=1.3.0", - "nbmake>=1.5.5", - "nbconvert>=7.16.6", -] +docs = [ + "mkdocs>=1.6.1", + "mkdocs-awesome-pages-plugin>=2.9.2", + "mkdocs-bibtex>=2.11.0", + "mkdocs-callouts>=1.9.1", + "mkdocs-exclude>=1.0.2", + "mkdocs-git-authors-plugin>=0.7.2", + "mkdocs-git-revision-date-localized-plugin>=1.2.0", + "mkdocs-glightbox>=0.3.4", + "mkdocs-jupyter>=0.25.1", + "mkdocs-macros-plugin>=1.0.4", + "mkdocs-minify-plugin>=0.7.1", + "mkdocs-redirects>=1.2.1", + "mkdocs-simple-hooks>=0.1.5", + "mkdocs-static-i18n>=1.3.0", + "mkdocstrings>=0.30.1", + "mkdocstrings[python]>=0.24.0", + "mike>=2.0.0", + "nbconvert>=7.16.6", + "nbmake>=1.5.5", + "pymdown-extensions>=10.7", +]Also applies to: 109-131
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
CHANGELOG.md(1 hunks)pyproject.toml(3 hunks)
🧰 Additional context used
📓 Path-based instructions (2)
{pyproject.toml,uv.lock}
📄 CodeRabbit inference engine (.cursorrules)
Manage dependencies with uv and virtual environments; configure in pyproject.toml and maintain uv.lock
Files:
pyproject.toml
{ruff.toml,pyproject.toml}
📄 CodeRabbit inference engine (.cursorrules)
Enforce code style with Ruff (configure via ruff.toml or [tool.ruff] in pyproject.toml)
Files:
pyproject.toml
🪛 markdownlint-cli2 (0.18.1)
CHANGELOG.md
14-14: Strong style
Expected: asterisk; Actual: underscore
(MD050, strong-style)
14-14: Strong style
Expected: asterisk; Actual: underscore
(MD050, strong-style)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (7)
- GitHub Check: Tests 3.13 on windows-latest
- GitHub Check: Tests 3.13 on macos-latest
- GitHub Check: Tests 3.12 on windows-latest
- GitHub Check: Tests 3.11 on macos-latest
- GitHub Check: Tests 3.12 on macos-latest
- GitHub Check: Tests 3.13 on ubuntu-latest
- GitHub Check: Tests 3.11 on windows-latest
🔇 Additional comments (4)
CHANGELOG.md (1)
3-26: ✓ CHANGELOG format is well-structured and complete.The 0.9.0 release entry follows the established changelog format with proper commit links, release tag comparison, and organized sections (Features, Bug Fixes, Documentation). No concerns here.
pyproject.toml (3)
12-12: ✓ Version bump to 0.9.0 is properly reflected.The project version is correctly updated from 0.7.5 to 0.9.0, aligning with the CHANGELOG entry and PR objectives.
26-44: ✓ Documentation dependencies successfully moved to optional-dependencies.All mkdocs-related packages and documentation tooling have been correctly migrated from
[project.dependencies]to[project.optional-dependencies][docs], reducing the runtime installation footprint. The main dependencies list now contains only essential runtime packages.Also applies to: 51-74
109-131: ✓ Dedicated[dependency-groups]docs section for development builds.The new
docsgroup under[dependency-groups]correctly provides a development-time convenience for installing documentation dependencies viauv sync --group docs. This complements the distribution-time[project.optional-dependencies]and follows uv best practices.
| "mkdocstrings>=0.30.1", | ||
| "mkdocstrings[python]>=0.24.0", |
There was a problem hiding this comment.
Fix version constraint inconsistency for mkdocstrings[python].
The base mkdocstrings>=0.30.1 requires version 0.30.1 or higher, but mkdocstrings[python]>=0.24.0 only requires 0.24.0. The extras version should match the base requirement to ensure consistency.
Apply this diff to align the version constraints:
- "mkdocstrings[python]>=0.24.0",
+ "mkdocstrings[python]>=0.30.1",This change should be applied at both locations (line 61 and line 118).
Also applies to: 117-118
🤖 Prompt for AI Agents
In pyproject.toml around lines 60-61 and 117-118, the version constraint for the
extras entry "mkdocstrings[python]>=0.24.0" is inconsistent with the base
"mkdocstrings>=0.30.1"; update both occurrences so the extras match the base
requirement (e.g., change "mkdocstrings[python]>=0.24.0" to
"mkdocstrings[python]>=0.30.1") to ensure consistent versioning across the file.
…ependencies This commit modifies the GitHub Actions workflows for both documentation deployment and notebook testing. The installation commands for dependencies are updated to use `uv sync --group docs --dev`, ensuring that the necessary documentation tools, including mkdocs and related plugins, are installed correctly. This change enhances the clarity and efficiency of the CI/CD process for documentation management.
…al dependencies in uv.lock This commit updates the version of the "abses" package to 0.9.0 and reorganizes the optional dependencies in the `uv.lock` file. Documentation-related dependencies have been grouped under `[package.optional-dependencies]`, enhancing clarity and organization. Additionally, several development dependencies have been added or updated to ensure compatibility and improve the development workflow.
So that mkdocs-jupyter is not required anymore.
Summary by CodeRabbit
Chores
Documentation
Bug Fixes